package com.mdd.front.service;


import com.mdd.front.validate.AiTagCreateValidate;
import com.mdd.front.validate.AiTagSearchValidate;
import com.mdd.front.validate.AiTagUpdateValidate;
import com.mdd.front.validate.common.PageValidate;
import com.mdd.front.vo.AiTagListedVo;
import com.mdd.front.vo.AiTagDetailVo;
import com.mdd.common.core.PageResult;

/**
 * ai标签服务接口类
 * @author XueYong
 */
public interface IAiTagService {

    /**
     * ai标签列表
     *
     * @author XueYong
     * @param pageValidate 分页参数
     * @param searchValidate 搜索参数
     * @return PageResult<AiTagListedVo>
     */
    PageResult<AiTagListedVo> list(PageValidate pageValidate, AiTagSearchValidate searchValidate);

    /**
     * ai标签详情
     *
     * @author XueYong
     * @param id 主键ID
     * @return AiTagDetailVo
     */
    AiTagDetailVo detail(Integer id);

    /**
     * ai标签新增
     *
     * @author XueYong
     * @param createValidate 参数
     */
    void add(AiTagCreateValidate createValidate);

    /**
     * ai标签编辑
     *
     * @author XueYong
     * @param updateValidate 参数
     */
    void edit(AiTagUpdateValidate updateValidate);

    /**
     * ai标签删除
     *
     * @author XueYong
     * @param id 主键ID
     */
    void del(Integer id);

}
